package com.zzl.bonds.ticket.entity;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.zzl.apidoc.annotation.ApidocModel;
import com.zzl.apidoc.annotation.ApidocModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.util.Date;

/**
 * 开立或转让上传的资料
 *
 * @author gull
 * @date 2022-07-06 13:43:53
 */
@Data
@TableName("t_ticket_data")
@ApidocModel
@SuppressWarnings("javadoc")
public class TicketDataEntity implements Serializable {
    private static final long serialVersionUID = 1L;

    @TableId(type = IdType.UUID)
    @ApidocModelProperty(description = "主键")
    private String id;
    @ApidocModelProperty(description = "所属票据类型的id")
    private String ticketActionId;
    @ApidocModelProperty(description = "票据类型 1、开立 2、转让 3、融资 4、兑付")
    private Integer ticketActionType;
    @ApidocModelProperty(description = "资料类型 1、贸易合同 2、发票")
    private String dataType;
    @ApidocModelProperty(description = "资料类型名称")
    private String dataTypeName;
    @ApidocModelProperty(description = "文件名称")
    private String fileName;
    @ApidocModelProperty(description = "资料编号")
    private String dataNo;
    @ApidocModelProperty(description = "资料描述")
    private String dataDescribe;
    @ApidocModelProperty(description = "资料文件地址/文件中心的id")
    private String dataAddress;
    @ApidocModelProperty(description = "企业id,权限使用")
    private String enterpriseId;
    @ApidocModelProperty(description = "部门id")
    private Integer orgId;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApidocModelProperty(description = "创建时间", validate = "yyyy-MM-dd HH:mm:ss")
    @TableField(fill = FieldFill.INSERT)
    private Date createTime;
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApidocModelProperty(description = "修改时间", validate = "yyyy-MM-dd HH:mm:ss")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private Date updateTime;
    @ApidocModelProperty(description = "创建人")
    private Integer creatorId;
    @ApidocModelProperty(description = "修改人")
    private Integer updaterId;
    @ApidocModelProperty(description = "备注 / 保存发票的信息")
    private String remark;
    @ApidocModelProperty(description = "发票代码")
    private String invoiceCode;
    @ApidocModelProperty(description = "发票号码")
    private String invoiceNo;
    @ApidocModelProperty(description = "发票类型 0 专票 1普票")
    private Integer invoiceType;
    @ApidocModelProperty(description = "价税合计")
    private Double amountIncludingTax;
    @ApidocModelProperty(description = "校验码后6位")
    private String lastSixDigitsCheckCode;
    @JsonFormat(pattern = "yyyy-MM-dd")
    @ApidocModelProperty(description = "开票日期", validate = "yyyy-MM-dd")
    private Date billingDate;


}
